luci-app-ddns: no implicit interface when ip_source=interface
authorGuoxin Pu <[email protected]>
Thu, 5 Jun 2025 10:40:00 +0000 (18:40 +0800)
committerPaul Donald <[email protected]>
Sat, 7 Jun 2025 14:17:02 +0000 (17:17 +0300)
The DDNS service attribute "interface" is for hotplug.d hook to bring up
and down DDNS updater(s) on ifup and ifdown events for an OpenWrt
"interface", not to be confused with attribute "ip_interface" which defines
the physical interface to get IP from.

With this change, the DDNS configuration service.xxx.interface is no longer
derived from the physical interface name (duplicated from ip_interface to be
specific) when ip_source=interface, and as a result, the interface must be set
explicitly.

Signed-off-by: Guoxin Pu <[email protected]>
applications/luci-app-ddns/htdocs/luci-static/resources/view/ddns/overview.js

index 1ccb5d69adcbbbe838ecba31f47a49518c9476bb..c5576392be6096483580cb96e24d8d081601d642 100644 (file)
@@ -895,11 +895,11 @@ return view.extend({
                                        o.default = 'wan';
                                        o.depends("ip_source", "web");
                                        o.depends("ip_source", "script");
+                                       o.depends("ip_source", "interface");
 
                                        o = s.taboption('advanced', form.DummyValue, '_interface',
                                                _("Event Network"),
                                                _("Network on which the ddns-updater scripts will be started"));
-                                       o.depends("ip_source", "interface");
                                        o.depends("ip_source", "network");
                                        o.forcewrite = true;
                                        o.modalonly = true;